Apparatus and method for detecting operational issues based on single input single output system dynamics

ABSTRACT

Methods and apparatus are provided for detecting an anomaly in fuel demand data and fuel supply data generated by a fuel metering system for an engine, The method comprises collecting the fuel demand data and the fuel supply data during operation of the fuel metering system, generating expected fuel supply data based on the collected fuel demand data and a nominal response model describing the expected behavior of the fuel metering system, and detecting the anomaly if a difference between the expected fuel supply data and the collected fuel supply data exceeds a predetermined threshold.

STATEMENT REGARDING FEDERALLY SPONSORED RESEARCH OR DEVELOPMENT

This invention was made with Government support under contract no.W911W6-08-C-0002 awarded by the Untied States Army. The Government hascertain rights in the invention.

TECHNICAL FIELD

The present invention generally relates to vehicle maintenance systems,and more particularly relates to an apparatus and method for detectingoperational issues based on single input single output system dynamics.

BACKGROUND

Modern electronic systems, such as the types used in avionics, ofteninclude a variety of integrated components and subsystems. Detecting andaddressing operational issues that occur within each of these componentsand subsystems is necessary to ensure that these complex electronicsystems function correctly. However, detecting and isolating operationalissues associated with such systems can be difficult due to theirintegrated nature. For example, a fuel metering system for regulatingthe flow of fuel to an internal combustion engine may have a pluralityof subcomponents (e.g., controllers, actuators, valves, etc.). In thiscase, an operational issue with the fuel system may be caused by any oneof the fuel metering system subcomponents or by another engine systemthat interacts with the fuel metering system.

Accordingly, it is desirable to provide a system and method fordetecting operational issues that occur within an electronic system. Itis also desirable to provide a method for isolating the cause of anoperational issue associated with an electronic system. Furthermore,other desirable features and characteristics of the present inventionwill become apparent from the subsequent detailed description of theinvention and the appended claims, taken in conjunction with theaccompanying drawings and this background of the invention.

BRIEF SUMMARY

A method is provided for detecting an anomaly in fuel demand data andfuel supply data generated by a fuel metering system for an engine. Themethod comprises collecting the fuel demand data and the fuel supplydata during operation of the fuel metering system, generating expectedfuel supply data based on the collected fuel demand data and a nominalresponse model describing the expected behavior of the fuel meteringsystem, and detecting the anomaly if a difference between the expectedfuel supply data and the collected fuel supply data exceeds apredetermined threshold.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention will hereinafter be described in conjunction withthe following drawing figures, wherein like numerals denote likeelements, and

FIG. 1 is a block diagram of an exemplary fuel metering system forproviding fuel to an internal combustion engine;

FIG. 2 is a block diagram of an exemplary apparatus for determining anominal response model for an SISO system;

FIG. 3 is a flowchart of an exemplary method for determining a nominalresponse model for a fuel metering system;

FIG. 4 is a flowchart of an exemplary method for detecting anomalies inthe system inputs and system outputs for an SISO system;

FIG. 5 is a flowchart of an exemplary method for detecting, andisolating the cause of, an oscillation anomaly in the collected dataset; and

FIG. 6 is a schematic of an exemplary method for detecting, andisolating the cause of, an offset anomaly in the collected data set.

DETAILED DESCRIPTION

The following detailed description is merely exemplary in nature and isnot intended to limit the invention or the application and uses of theinvention. Furthermore, there is no intention to be bound by any theorypresented in the preceding background or the following detaileddescription.

FIG. 1 is a block diagram of an exemplary fuel metering system 10 forproviding fuel to an internal combustion engine 12. In the embodimentdescribed below, the internal combustion engine is an aircraft engine.However, it will be understood by one who is skilled in the art thatother engine types may also be used. Internal combustion engine 12includes a combustion chamber 30, a fuel nozzle manifold 31, an exhausttemperature sensor 32, and an engine speed sensor 34. Combustion chamber30 burns fuel and provides power to operate the internal combustionengine 12. The exhaust temperature sensor 32 generates signalsdescribing the heat from the exhaust of the internal combustion engine12. The engine speed sensor 34 generates signals describing the enginespeed. The engine speed describes the rate at which one or more enginecomponents (e.g., the rotors for a jet engine) are moving.

The fuel nozzle manifold 31 includes one or more primary nozzles 36 andone or more secondary nozzles 38. The primary nozzles 36 and secondarynozzles 38 atomize the fuel as it enters the combustion chamber 30.Primary nozzles 36 are smaller than the secondary nozzles 38 and provideincreased control over the rate of fuel that is provided to the engine.At lower fuel flow rates (e.g., 75 PPH or less), the secondary nozzles38 are closed to allow precise control of the amount of fuel enteringcombustion chamber 30 with the primary nozzles 36. At higher fuel flowrates, the secondary nozzles 38 are opened to provide for an increasedfuel flow rate to the combustion chamber 30.

Fuel metering system 10 comprises a controller 40, memory 41, a fueldelivery system 42, and a fuel temperature sensor 44 for detecting thetemperature of the fuel. Fuel delivery system 42 includes an actuator50, a fuel valve 52, and a fuel valve position sensor 54. Fuel valve 52may be placed in an open, partially open, or closed position to regulatethe flow of fuel from a fuel source 59 to the combustion chamber 30 ofthe internal combustion engine 12. Actuator 50 is coupled to, andconfigured to adjust the position of, the fuel valve 52 based on signalsreceived from controller 40. Fuel valve position sensor 54 generatessignals regarding the position of the fuel valve 52.

Controller 40 may comprise any type of processor or multiple processors,single integrated circuits such as a microprocessor, or any suitablenumber of integrated circuit devices and/or circuit boards working incooperation to accomplish the functions of a processing unit. The memory41 may be electronic memory (e.g., ROM, RAM, or another form ofelectronic memory) configured to store instructions and/or data in anyformat, including source or object code. As depicted, controller 40receives a Pitch Lever Angle (PLA) 60 and a Collective Pitch (CP) 62. Inaddition, controller 40 is coupled to and receives signals from theengine speed sensor 34, the exhaust temperature sensor 32, the fueltemperature sensor 42, and the fuel valve position sensor 54.

Controller 40 determines a fuel demand (F_dem) for the internalcombustion engine 12. F_dem represents a desired flow rate (e.g., inpounds per hour) of fuel entering the combustion chamber 30. Controller40 determines F_dem by calculating the difference between a desiredengine speed and the actual engine speed. The desired engine speed isdetermined based on the PLA 60 and CP 62 and the actual engine speed isreceived via the engine speed sensor 34. If controller 40 determinesthat the actual engine speed is slower than the desired engine speed, itincreases F_dem. Alternatively, if the actual engine speed is slowerthan the desired engine speed, controller 40 decreases F_dem. Controller40 converts F_dem into a fuel demand signal that is transmitted toactuator 50. The fuel demand signal directs the actuator 50 to open orclose the fuel valve 52 to increase or decrease the fuel flow rate inaccordance with F_dem.

In addition, controller 40 receives a fuel supply signal from the fuelvalve position sensor 54 describing the current position of fuel valve52. Controller 40 converts the fuel supply signal into an actual fuelsupply (F_supp). The fuel supply represents the actual flow rate for thefuel that is entering the combustion chamber 30. During normal operationof the fuel metering system 10, F_supp is substantially the same asF_dem. Any change in F_dem is followed by a substantially similar changein the F_supp. However, there will be a lag between the change in theF_dem and the change in F_supp corresponding to the time that it takesactuator 50 to receive the fuel demand signal and adjust the fuel valve52.

As further described below, a nominal response model may be determinedfor describing the relationship between F_dem and F_supp within a fuelmetering system 10 that is functioning properly. Controller 40 utilizesthis nominal response model to detect operational issues associated withthe fuel metering system 10. As further described below, controller 40collects the F_dem and F_supp values generated during a predeterminedsample period. Controller 40 then determines whether the collected datafollows the nominal response model within a predetermined threshold. Ifthe collected follows the nominal response model within thepredetermined threshold, controller 40 determines that the fuel meteringsystem is functioning properly. However, if the collected data does notfollow the nominal response model within the predetermined threshold,controller 40 determines that the collected data has one or moreanomalies that may be indicative of an operational issues associatedwith the fuel metering system 10. In this case, controller 40 utilizesone or more external data sources (e.g., such as the fuel temperaturesensor 44 or the exhaust temperature sensor 32) to isolate the cause ofthe operational issue.

As described above, the fuel metering system 10 is an example of asingle output single input (SISO) system, wherein the fuel demand is thesystem input and the fuel supply is the system output. It should benoted that while embodiments are described herein with regard to a fuelmetering system 10, it will be understood by one who is skilled in theart that other SISO systems may also be used in connection with thepresent invention.

FIG. 2 is a block diagram of an exemplary apparatus 100 for determininga nominal response model for an SISO system (e.g., the fuel meteringsystem 10 of FIG. 1). As depicted, apparatus 100 includes a processor102, memory 104, and a historical data source 106. Processor 102 maycomprise a programmable logic control system (PLC), a microprocessor, orany other type of electronic controller. It may include one or morecomponents of a digital and/or analog type and may be programmable bysoftware and/or firmware. The memory 104 may be electronic memory (e.g.,ROM, RAM, or another form of electronic memory) configured to storeinstructions and/or data in any format, including source or object code.The historical data source 106 comprises a storage device, such as ahard drive, for storing historical data. The historical data comprises aplurality of data sets generated during previous operation of one ormore fuel metering systems. Each data set includes fuel demand data(system input data) and fuel supply data (e.g., system output data)generated at various times during a startup or shutdown of an internalcombustion engine, or at any other time period when the fuel demand islikely to change. The fuel demand data comprises a plurality of F_demvalues and the fuel supply data comprises a plurality of correspondingF_supp values for various points in time during the time period.

As described above, under normal operational conditions F_supp willfollow F_dem as per the intrinsic dynamics of the actuator 50 and fuelvalve 52 (FIG. 1). Thus, by analyzing data sets that are generated by afuel metering system 10 that is operating normally, processor 102 isable to identify a nominal response model that predicts how the fuelsupply data will change in response to a change in the fuel demand data.In the majority of cases, a fuel metering system will function as it isdesigned to and, therefore, most of the data sets stored on thehistorical data source 106 will describe fuel metering systems that arefunctioning properly. However, the historical data source 106 may alsoinclude data sets that are generated by fuel metering systems having oneor more operational issues. These data sets may include anomalies andshould not be used to determine the nominal response model. Thus,processor 102 must first analyze the historical data to identify onlythe data sets that describe fuel systems that do not have anomalies.Processor 102 may then determine the nominal response model based on theidentified data sets.

FIG. 3 is a flowchart of an exemplary method 200 for determining anominal response model for a SISO system (e.g., the fuel metering system10 of FIG. 1). With reference to FIGS. 2 and 3, method 200 is performedby processor 102 as it analyzes the data sets stored on the historicaldata source 106. During steps 202-216, processor 102 utilizes astatistical bootstrap technique to identify data sets that describe fuelmetering systems that are functioning properly. Processor 102 then usesthe identified data sets to determine the nominal response model duringstep 220. It should be noted that while method 200 is described belowwith regard to a fuel metering system. Alternative embodiments may beutilized to generate nominal response models for other SISO systems aswell.

During step 202 of method 200, processor 102 randomly selects apredetermined number of data sets from the historical data. The selecteddata sets are then merged into one large data set (step 204).

Next, during step 206, processor 102 identifies a preliminary nominalresponse model that describes the merged data set. The preliminarynominal response model generated an expected fuel supply (F_supp′) foreach time period (t) of the merged data set based on the fuel demand(F_dem) during that time period. In one embodiment, the nominal responsemodel is expressed as an ARX (auto-regressive) model having the form:A(q)F−suppt′(t)=B(q)F_dem(t−nk)+e(t)   (1)where:

q is a delay operator,

nk is the input lag, and

e(t) is the zero mean unit covariance Gaussian noise.

Model parameters A and B are coefficients vectors for the delay operatorq and can be expressed as follows:A(q)=1+(a ₁)q ⁻¹+ . . . +(a _(na))q ^(−na) , na order of A(q)   (2)B(q)=(b ₁)+(b ₂)q ⁻¹+ . . . +(b _(nb))q ^(−nb) , nb order of B(q)   (3)

Equation 1 may be rewritten in the form:F_supp′(t)+(a ₁)F_supp′(t−1)+ . . . +(a _(na))F_′(t−na)=(b₁)F_dem(t−nk)+ . . . +(b _(nb))F_dem(t−nk−nb+1)+e(t)   (4)

In equations 2-4, na is the number of previous fuel supply values, andnb is the number of previous demand supply values, in the merged dataset. Further, nk represents a lag or delay that is required for the fuelmetering system to respond to a change in the fuel demand. In this case,nk may be set equal to one because actuator 50 and fuel valve 52 of FIG.1 are both configured to respond immediately to a change in F_dem.

During step 206, processor 102 identifies values for model parameters Aand B that minimize the differences between the expected fuel supplyvalues predicted by the preliminary nominal response model and theactual fuel supply values for each time period in the merged data set.In one embodiment, the values for the model are determined using a leastsquares approach provided by Matlab's System ID Toolbox.

Next, during step 208, processor 102 utilizes the preliminary nominalresponse model to identify a data fitness level for the data setsselected during step 202. The data fitness level is a measure of thecorrelation between a data set and the preliminary response model. Inone embodiment, the data fitness level is a percentage. For example, thepercentage may be determined based on the following equation:Data Fitness Level=100*(1−RMS1/RMS2)   (5)In this case, RMS1 is the root mean square of the difference between theexpected fuel supply data predicted by the preliminary nominal responsemodel and the actual fuel supply data from the data set. RMS2 is theroot mean square of the difference between the actual fuel supply foreach time period in the data set and the mean value of all the fuelsupplies listed in the data set. It should be noted that other methodsfor determining a data fitness level may also be utilized during step208.

Processor 102 compares each of the data fitness levels determined duringstep 208 with a first predetermined threshold (step 210). If each datafitness level exceeds the first predetermined threshold (e.g., 80%),then processor 102 proceeds to step 212. In this case, each of the datasets selected during step 202 do not include anomalies and, therefore,describe fuel metering systems that are functioning properly.Alternatively, if the fitness level for one or more of the data setsdoes not exceed the first predetermined threshold, then one or more ofthe data sets includes anomalous data. In this case, processor 102returns to step 202 and repeats steps 202-210 until it is able todetermine a preliminary nominal response model utilizing only data setsthat do not include such anomalies.

During step 212, processor 102 utilizes the preliminary nominal responsemodel to determine a data fitness level for every data set stored inhistorical data source 106. Processor 102 may utilize the methoddescribed above for determining the data fitness level of a data set.Processor 102 then identifies and stores information regarding the datasets having a data fitness threshold above a second predeterminedthreshold (e.g., 70%) during step 214. It should be noted that if a dataset has a data fitness level above the second predetermined thresholdthen it does not include anomalies and, therefore, is likely to describea fuel metering system that performs correctly.

Processor 102 repeats steps 202-214 a predetermined number of times(e.g., 200) during step 216. Each time step 214 is performed, processor102 identifies a group of data sets having a data fitness level thatexceeds the second predetermined threshold. During step 218, processor102 selects and merges the data sets identified during the iterations ofstep 214 with a predetermined frequency threshold. For example, duringstep 218 processor 102 may select and merge the data sets that wereidentified during more than a predetermined percentage (e.g., 90%) ofthe iterations of step 214.

Finally, during step 220 processor 102 generates a nominal responsemodel based on the merged data set generated during step 218. Thenominal response model is generated using substantially the same methodfor generating the preliminary nominal response model as described abovewith regard to step 206.

As described above, the nominal response model identified during method200 may be used by controller 40 to detect anomalies in the systeminputs (e.g., fuel demand) and system outputs (e.g., fuel supply)generated by an SISO system (e.g., the fuel metering system 10 of FIG.1). FIG. 4 is a flowchart of an exemplary method 300 for detectinganomalies in the system inputs and system outputs for an SISO system.With reference to FIGS. 1 and 4, the steps of method 300 are performedby controller 40.

During step 302 of method 300, controller 40 collects and stores a dataset comprising fuel demand data and fuel supply data during a timeperiod (hereinafter, the “sample time period”) having a fixed duration(e.g., 30 seconds). The fuel demand data will comprise F_dem valuescollected at sequential time intervals (e.g., once every 5 milliseconds)during the sample time period. The fuel supply data will comprisecorresponding F_supp values collected at the same time intervals.Preferably, the fuel demand data and fuel supply data is collectedduring a sample time period when the fuel demand is changing, such asduring a startup or shutdown of the internal combustion engine 12.

Next, during step 304 controller 40 determines whether the collecteddata set follows the nominal response model identified during method200. In one embodiment, controller 40 identifies a data fitness levelfor the collected data set. Controller 40 may utilize the method fordetermining the data fitness level of a data set described above withrespect to step 208 (FIG. 3) of method 200. Controller 40 then comparesthe data fitness level with a predetermined threshold (step 304). If thedata fitness level exceeds the predetermined threshold (e.g., 70%),controller 40 determines that the fuel metering system is functioningproperly because it is functioning in a predictable manner that isconsistent with historical data for similar fuel metering systems. Inthis case, controller 40 proceeds to step 308 and method 300 isterminated.

Alternatively, if the data fitness level does not exceed thepredetermined threshold, then the collected data include anomalous data.In this case, controller 40 proceeds to step 310. In this case, the fuelmetering system 10 (FIG. 1) is not functioning in a manner that isconsistent with the historical data for fuel metering systems that arefunctioning properly, indicating that there is an anomaly with thecollected data set that may be the result of an operational issues.

During step 310, controller 40 analyzes the collected data to classifythe anomaly detected during step 306. Two common types of anomalies thatmay be present in the collected data set are oscillation anomalies andoffset anomalies. An oscillation anomaly occurs when the collected fueldemand data has an amount of variability that is larger than expectedfor a fuel metering system that is functioning properly, indicating thatcontroller 40 is constantly determining that there is a differencebetween the desired engine speed and the actual engine speed. An offsetanomaly occurs when there is a substantial difference between the totalamount of fuel demanded and the total amount of fuel supplied for thesample time period. After controller 40 detects and classifies theanomaly it uses one or more external data sources (e.g., the fueltemperature sensor 44 or the exhaust temperature sensor 32) to isolatean operational issue that is causing the anomaly (step 312).

FIG. 5 is a flowchart of an exemplary method 350 for detecting, andisolating the cause of, an oscillation anomaly in the collected dataset. With reference to FIGS. 1 and 5, during method 350 controller 40analyses the collected fuel demand data to determine whether there is ahigh amount of variability in the F_dem values. A high amount ofvariability in fuel demand data is indicative oscillations resultingfrom controller 40 determining that the desired engine speed and theactual engine speed are not the same.

During step 352, controller 40 applies a Low Pass filter (LP filter) tothe fuel demand data. The LP filter allows fuel demand data having anamount of variability that is below a predetermined frequency thresholdto pass through unchanged. However, if the amount of variability in thefuel demand data is above the predetermined frequency threshold, the LPfilter reduces variability. Preferably, the predetermined frequencythreshold for the LP filter is set at a level that only allows fueldemand data having an expected amount of variability to pass throughunchanged. Thus, the LP filter has the effect of smoothing fuel demanddata having a high degree of variability.

Next, controller 40 determines if the root mean square (RMS) errorbetween the unfiltered fuel demand data and the filtered fuel demanddata exceeds a predetermined threshold (step 354). If the RMS errorbetween the unfiltered fuel and filtered fuel demand data does notexceed the predetermined threshold, the controller 40 determines thatthe fuel demand data is not oscillating and method 300 terminates (step356). Alternatively, if the RMS error exceeds the predeterminedthreshold, controller 40 proceeds to step 358. In this case, theunfiltered fuel demand data has a high amount of variability that wasreduced by the LP filter. As described above, a high amount ofvariability is indicative of fuel demand data that is oscillating.

During step 358, controller 40 determines if the mean value of the fueldemand data exceeds a predetermined fuel flow rate threshold. In someembodiments, the fuel flow rate threshold is set at the fuel flow rate(e.g., 75 PPH) at which the secondary nozzles 38 of the fuel nozzlemanifold 31 would normally be engaged. If oscillations are detected andthe average fuel demand is above the fuel flow rate threshold, then theprimary nozzles 36 and secondary nozzles 38 have both engaged andfunctioning properly. In this case, the controller 40 should be checkedto ensure that it is determining the F_dem values correctly (step 360).

Alternatively, if oscillations are detected and the average fuel demandis below the fuel flow rate threshold, there may be an operationalissues with the primary nozzles 36 and controller 40 proceeds to step362 of method 350. For example, the primary nozzles 36 may not beatomizing the fuel properly, resulting in poor combustion and reducedengine speeds. In response, controller 40 will increase the F_dem valuecausing the secondary nozzles 38 to open prematurely (e.g., before thefuel flow rate has reached the predetermined threshold). However, thesecondary nozzles 38 are large and more difficult to control at low fuelrates. As a result, the engine speed and resulting F_dem valuesdetermined by controller 40 will vary.

During step 362, controller 40 determines if the fuel temperatureexceeds a predetermined temperature threshold. Controller 40 receivesthe fuel temperature from the fuel temperature sensor 44. If the fueltemperature is below the temperature threshold, then the internalcombustion engine 12 is cold (e.g., such as during a cold start).Oscillation in the fuel demand data is normal such engine conditions(step 364). Alternatively, if the fuel temperature is above thetemperature threshold, then the internal combustion engine is not cold.In this case, the detected oscillation is likely the result of anoperational issue with the fuel nozzle manifold 31 (step 366).

FIG. 6 is a schematic of an exemplary method 400 for detecting, andisolating the cause of, an offset anomaly in the collected data set.With reference to FIGS. 1 and 6, during normal operation of the fuelmetering system, the total amount of fuel supplied to the combustionchamber 30 should be substantially the same as the total amount of fueldemanded by controller over time. An offset occurs when there is asubstantial difference between the total amount of fuel supplied and thetotal amount of fuel demanded during time period.

During step 402, controller 40 integrates the fuel demand data withrespect to time to determine a total amount of fuel demanded bycontroller 40 over a predetermined time period. The predetermined timeperiod will comprise part, or all, of the sample time window. Inaddition, during step 404 controller 40 integrates the fuel supply datawith respect to time to determine a total amount of fuel supplied tocombustion chamber 30 during the predetermined time period. Finally,controller 40 integrates the exhaust heat data generated by the exhausttemperature sensor 32 with respect to time to determine the total amountof exhaust heat generated during the predetermined time window (step406).

Controller 40 determines the difference between the total amount of fueldemanded and the total amount of fuel supplied during the predeterminedtime period (step 408). If this difference is greater than a firstpredetermined threshold, the controller 40 detects an offset anomaly(step 410). Controller 40 also determines if the total amount of exhaustheat exceeds a second predetermined threshold during step 412. If thetotal amount of exhaust heat exceeds the predetermined threshold thenfuel is being delivered to, and burned in, the combustion chamber 30 ofinternal combustion engine 12.

As depicted, if there is no offset anomaly and that fuel is being burnedin the combustion chamber 30, controller 40 determines that the fuelmetering system is functioning properly (step 414). In this case thetotal amount of fuel supplied during the time period is substantiallythe same as the total amount of fuel demanded and the fuel is beingdelivered to the combustion chamber 30. Alternatively, if there is anoffset anomaly and fuel is being burned in combustion chamber 30,controller 40 determines that there is an operational issue with thefuel valve position sensor 54 (step 416). In this case, the fuel valveposition sensor 54 indicates that the fuel supply is not substantiallythe same as the fuel demand, but the exhaust heat indicates that fuel isbeing received and burned in the combustion chamber 30. Suchcircumstances are indicative of a fuel valve position sensor 54 that isnot detecting the position of the fuel valve correctly.

If there is no offset anomaly and fuel is not being burned in thecombustion chamber 30, controller 40 determines that there is a fuelloss issue (step 418). In this case, the fuel valve position sensor 54indicates that the fuel supply is substantially the same as the fueldemand, but the exhaust heat indicates that less than the expectedamount of fuel is being received and burned in the combustion chamber30. Such circumstances may be indicative of a fuel leak, an operationalissue with the fuel delivery system (e.g., a problem with the fuelnozzle manifold 31), or other issues that might affect the supply offuel to the combustion chamber 30.

Finally, if there is an offset issue and fuel is being burned in thecombustion chamber 30, controller 40 determines that there is an issuewith the actuator 50 (step 420). In this case, the total amount of fuelsupplied during the time period is not substantially the same as thetotal amount of fuel demanded, but some fuel is being delivered to thecombustion chamber. Such conditions are indicative of an actuator thatis not responding correctly.

While at least one exemplary embodiment has been presented in theforegoing detailed description of the invention, it should beappreciated that a vast number of variations exist. It should also beappreciated that the exemplary embodiment or exemplary embodiments areonly examples, and are not intended to limit the scope, applicability,or configuration of the invention in any way. Rather, the foregoingdetailed description will provide those skilled in the art with aconvenient road map for implementing an exemplary embodiment of theinvention. It being understood that various changes may be made in thefunction and arrangement of elements described in an exemplaryembodiment without departing from the scope of the invention as setforth in the appended claims.

1. A method for detecting an anomaly in fuel demand data and fuel supplydata generated by a fuel metering system for an engine, the methodcomprising: collecting, by a processor, the fuel demand data and thefuel supply data during operation of the fuel metering system;generating, by the processor, expected fuel supply data based on thecollected fuel demand data and a nominal response model describing theexpected behavior of the fuel metering system; detecting, by theprocessor, the anomaly if a difference between the expected fuel supplydata and the collected fuel supply data exceeds a predeterminedthreshold; and isolating, by the processor, the cause of the detectedanomaly based on additional analysis of the collected historical data.2. The method of claim 1, further comprising the step of generating thenominal response model based on historical data comprising fuel demanddata and fuel supply data generated during previous operation of thefuel metering system.
 3. The method of claim 1, wherein step ofcollecting further comprises: collecting fuel demand data and fuelsupply data at predetermined time intervals during a sample time periodhaving a predetermined length.
 4. The method of claim 3, wherein thestep of detecting further comprises detecting the anomaly if the rootmeans square of the difference between the expected fuel supply data andthe collected fuel supply data exceeds a predetermined threshold.
 5. Themethod of claim 4, wherein the step of isolating further comprises:applying a low pass filter having a predetermined frequency threshold tothe collected fuel demand data; and classifying the anomaly as anoscillation anomaly if the difference between the filtered fuel demanddata and the unfiltered fuel demand data exceeds a predeterminedthreshold.
 6. The method of claim 5, further comprising a fueltemperature sensor for detecting the temperature of the fuel that flowsto the engine and wherein the step of isolating further comprisesdetermining the cause of the oscillation anomaly based on the fueltemperature.
 7. The method of claim 4, wherein the step of isolatingfurther comprises: determining the total amount of fuel demanded duringa predetermined time period based on the collected fuel demand data;determining the total amount of fuel supplied during the predeterminedtime period based on the collected fuel supply data; and detecting anoffset anomaly if the difference between the total amount of fueldemanded and the total amount of fuel supplied is greater than apredetermined threshold.
 8. The method of claim 7, further comprising anengine exhaust heat sensor and wherein the step of isolating furthercomprises: determining the total amount of heat expelled from the engineduring the predetermined time period; and detecting the cause of theoffset anomaly based on the total amount of heat expelled from theengine during the predetermined time period.